#!/bin/sh

awk '
BEGIN {
    FS="\n";
    justChanged = 0;
    inCommentArea = 0;
}

{
    if (index($1, "/*") > 0)
        {
            justChanged = 1;
            inCommentArea = 1;
        }

    if (index($1, "*/") > 0)
        {
            justChanged = 1;
            inCommentArea = 0;
        }

    if (justChanged==1 || inCommentArea==1)
        print $0;
    else if (inCommentArea==0)
            {
                if (index($0, "//") > 0)
                    {
                        if (match($0,"^.*\" *//.*\".*$"))                   #MATCHES   < < printf("//-----"); >>
                            {
                                print $0;
                            }
                        else
                            {
                                if (match($0,"^ *//.*$"))                    #MATCHES   < <   //Comment >>
                                    {
                                        print "/* ", $0, "  ansi-c*/";
                                    }
                                else if (match($0,"^.*[;,{}()_] *//.*$"))   #MATCHES   < < int k;  //Comment >>
                                    {
                                        split($0, array, "//");
                                        print array[1], "/* ", array[2], "  ansi-c*/";
                                    }
                                else if (index($0, "#") > 0)                 #MATCHES   < < int k;  //Comment >>
                                    {
                                        split($0, array, "//");
                                        print array[1], "/* ", array[2], "  ansi-c*/";
                                    }
                                else
                                    {
                                        print $0;
                                    }
                            }
                    }
                else
                    {
                        print $0;
                    }
            }

    justChanged = 0;
}
'